package com.kpmg.datalake.reportanalysis.dao;

import java.util.List;
import java.util.Map;

import com.kpmg.datalake.reportanalysis.model.AccountBookCheckReport;
import com.kpmg.datalake.reportanalysis.model.ExportCheck;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

/**
 * 数据查询服务Mapper
 * @author Tony
 */
@Repository
public interface DataMapper {
	
	/**
	 * 查询账套信息
	 */
	public List<Map<String,Object>> queryGlorBook();
	
	/**
	 * 查询会计年月
	 */
	public List<Map<String,String>> queryAccprd();
	
	/**
	 * 查询会计月份
	 */
	public List<String> queryAccmonth(@Param("startMonth") String monthBegin, @Param("endMonth") String monthEnd);

    /**
     * 查询与导出校验报告(科目余额/序时帐)
     *
     * @param requestCode 请求号
     * @param bookType    账套类型 JE => 序时帐, SBJ => 科目余额
     * @return
     */
    public List<Map<String, Object>> queryCheckReport(@Param("requestCode") String requestCode, @Param("bookType") String bookType);

    /**
     * 查询与导出校验报告(科目余额、序时帐交叉校验)
     *
     * @param requestCode 请求号
     * @return
     */
    public List<Map<String, Object>> queryCheckReportIntersect(@Param("requestCode") String requestCode);


    /**
     * 导入导出校验
     * @param projectId 项目id
     * @param checkType 校验类型 EXPRT_BTCH_ID: 源系统 => 数据文件  IMPR_BTCH_ID: 数据文件 => DataLake
     * @return
     */
    public List<ExportCheck> queryErpExport(@Param("projectId") String projectId, @Param("checkType") String checkType);

}
